package org.br.erp.project.project.service;

import org.br.erp.project.project.entity.Projectitem;
import org.br.erp.project.project.entity.Projectplannedtime;
import org.br.erp.project.project.entity.Projectsalesitem;
import org.br.erp.project.project.entity.Projectpoitem;
import org.br.erp.project.project.entity.Projectexpense;
import org.br.erp.project.project.entity.Project;
import com.baomidou.mybatisplus.extension.service.IService;
import java.io.Serializable;
import java.util.Collection;
import java.util.List;

/**
 * @Description: 项目
 * @Author: jeecg-boot
 * @Date:   2024-05-08
 * @Version: V1.0
 */
public interface IProjectService extends IService<Project> {

	/**
	 * 添加一对多
	 *
	 * @param project
	 * @param projectitemList
	 * @param projectplannedtimeList
	 * @param projectsalesitemList
	 * @param projectpoitemList
	 * @param projectexpenseList
	 */
	public void saveMain(Project project,List<Projectitem> projectitemList,List<Projectplannedtime> projectplannedtimeList,List<Projectsalesitem> projectsalesitemList,List<Projectpoitem> projectpoitemList,List<Projectexpense> projectexpenseList) ;
	
	/**
	 * 修改一对多
	 *
   * @param project
   * @param projectitemList
   * @param projectplannedtimeList
   * @param projectsalesitemList
   * @param projectpoitemList
   * @param projectexpenseList
	 */
	public void updateMain(Project project,List<Projectitem> projectitemList,List<Projectplannedtime> projectplannedtimeList,List<Projectsalesitem> projectsalesitemList,List<Projectpoitem> projectpoitemList,List<Projectexpense> projectexpenseList);
	
	/**
	 * 删除一对多
	 *
	 * @param id
	 */
	public void delMain (String id);
	
	/**
	 * 批量删除一对多
	 *
	 * @param idList
	 */
	public void delBatchMain (Collection<? extends Serializable> idList);


	public void updateProjectStatus(List<String> ids,String status);
	
}
